The present invention relates to a digitizer combining functions of stereovision, color 3D digitizing and motion capture of a target object, a digitizing system using the digitizer, and associated digitizing and motion tracking methods.
3D digitizing, particularly non-contact optical 3D digitizing techniques, have become commercially available during recent years. Most of these techniques are based on the principle of optical triangulation. Despite the fact that passive optical triangulation (stereovision) has been studied and used for many years for photogrammetric measurements, the active optical triangulation technique (particularly laser scanning technique) has gained popularity because of its robustness and simplicity to process the obtained data using a computer. Most of the systems based on the active optical triangulation principle were developed for industrial applications, such as robotics assembly, robot guidance, industrial inspection, reverse engineering, etc. A laser beam or a laser stripe is projected onto a 3D surface of an object, scattering the laser beam or laser stripe on the surface. It is measured using a photo-electronic device. A signal can be measured indicating the position (usually the depth) of the measuring point. In most cases, the basic measurements are either a point or a section profile. A mechanical or optical scanning device is usually used to provide a frame of 3D measurement. Laser is a monochromatic light source that does not provide full color information. So, an additional camera and light source are used when a color texture is needed.
A new category of optical color 3D digitizers, such as the present applicant""s product line, has been developed. These systems use structured white light projection combined with a CCD camera allowing for the measurement of 3D geometry and color texture of a surface. The projected structured light (viewed by a camera from an angle different from the light projection) is deformed due to the 3D surface relief. The 3D coordinates of the surface are calculated by analyzing the deformation. These kinds of systems are being used in computer animation, special effects and in electronic game development.
On the other hand, the passive optical triangulation (stereovision, for example) is largely used for the purpose of motion capture. The correspondence problem (automatically finding one point on the object""s surface from two optical sensors, cameras in general) is not a major obstacle for this application because only a limited number of points must be measured. These points are often characterized by using visible markers.
Another application of stereovision is stereoscopic 3D display. Instead of determining the 3D coordinates of some points of an object in a 3D space, it simply needs to display a pair of stereoscopic images on a monitor (TV or computer monitor) so that the 3D perspective of an image can be seen. One possible configuration is to capture a pair of images using two cameras, which observe the parallax effect of an object. Then the left eye will view one image of this pair of stereoscopic images and the right eye will view the other. The human brain can easily merge this pair of images so that the object is viewed as a 3D image.
The existing 3D digitizing systems and optical motion capture systems are, in general, complex and too expensive for the Internet and mass consumer applications. Most of these systems incorporate sophisticated optical, electro-optical, mechanical and electronic components. Special expertise is needed to operate such a digitizer. In addition, the existing systems support separately the 3D digitizing and motion capture functions.
An object of the invention is to provide a digitizer combining functions of capturing stereoscopic images, color 3D digitizing, and motion capture.
Another object of the invention is to provide a system using the digitizer, which is simple in construction, simple to use and affordable for Internet and mass consumer applications like conference via Internet, 3D Web, e-commerce, off-line and on-line games and any application which requires affordable 3D digitizing and/or motion capture solution.
Another object of the invention is to provide methods for digitizing and tracking motion of a target object, which are implementable using a personal computer and simple lighting and video camera components.
According to the present invention, there is provided a digitizer combining functions of stereovision, color 3D digitizing and motion capture of a target object, comprising:
a first camera;
a second camera;
a first projection arrangement having a first light projector providing lighting for an active 3D range sensing for each of the cameras, and a grating element in front of the first light projector for projection of an encoded pattern on a surface of the target object;
a second projection arrangement having a second light projector providing lighting for an acquisition of texture information of the target object;
a base onto which the first and second cameras and the first and second projection arrangements are mounted in fixed relative positions with respect to one another, the cameras having optical axes converging through a single point, one of the light projectors having an optical axis intersecting with the optical axes of the cameras at the single point; and
a communication port connected to the cameras and the light projectors, for reception of control signals setting operation of the cameras and the light projectors and transmission of video signals from the cameras.
According to the present invention, there is also provided a digitizing system comprising a digitizer as above described and a computer having a port connectable with the communication port of the digitizer, functions controlling operation of the digitizer by generating the control signals for the stereovision, color 3D digitizing and motion capture, and functions for a processing of the video signals received through the port and generation of digitized data as a result of the processing.
According to the present invention, there is also provided a method for digitizing a target object, comprising steps of:
capturing basic images of the object with first and second cameras without additional illumination of the object, the cameras having optical axes converging through a single point and being aligned in angled directions with respect to each other so that the cameras have fields of view having significant overlapping portions over a depth of measurement including the single point;
illuminating the object with light in which an encoded pattern is projected;
capturing structured images with the cameras;
illuminating the object with light deprived of a pattern;
capturing texture images with the cameras;
identifying elements of the encoded pattern in the structured images;
determining a position of the elements to produce a set of measured points;
determining 3D coordinates of the measured points using calibration information in respect with position and alignment of the cameras;
determining coordinates corresponding to each measured point in the texture images to produce a digitized image of the object.
According to the present invention, there is also provided a method for tracking motion of a target object, comprising steps of:
capturing in parallel sequences of images of the target object with first and second cameras having optical axes converging through a single point and being aligned in angled directions with respect to each other so that the cameras have fields of view having significant overlapping portions over a depth of measurement including the single point;
detecting control points in a first image of each sequence;
tracking the control points in the sequences of images;
determining disparities between the control points in the images from the first camera and the images from the second camera;
determining 3D positions of the control points in corresponding ones of the images taken at a same time by the first and second cameras by using the disparities and calibration information comprising relative position and angular alignment of the cameras; and
generating trajectories of the control points as sequences of the 3D positions of the control points respectively.
Preferably, the system of the invention incorporates elements to capture and transfer a pair of stereo images, to obtain 3D coordinates and the color texture of a surface, and to capture the displacement of a number of given points in a real or quasi-real time. The data capturing process is simplified to make the operation of the digitizer as automatic as possible. With the system according to the invention, the 3D model can be first created with some identifiable control points located on the model surface. Then the 3D position of these control points can be captured in real or quasi-real time, so that the whole model can be controlled or animated.
The cameras can observe disparity created by the active light projector. There is also disparity in a pair of images captured by the two cameras. This digitizer can be connected to a computer via a digital port like a USB port, or other standard high-speed connections. The computer controls the cameras and respective light projectors. A snapshot button can be used to launch a 3D measurement process. The digitizer can be mounted onto a rotational table, with the computer directly controlling the rotation of the rotational table. It is also possible to place the target object on the rotational table so that the angular position of the rotated object can be known.
Preferably, the system provides at least three functions.
First, a pair of cameras can capture a pair of stereoscopic images at video rate. The stereo 3D image can be created when these two images are displayed on a monitor, which sends one image to the left eye and another image to the right eye. These images can be transferred via a high-speed link (Ethernet, T1, T3, for example) to another computer.
Second, combining the light projectors and both cameras, the digitizer provides measurement of the 3D coordinates of a surface with texture information. The encoded pattern is projected on the surface of an object by a light projector and both cameras capture the scene. With the surface relief of the object, the projected pattern is deformed from the point of view of the camera. With a careful calibration technique, it is possible to determine the 3D coordinates of some points on this surface by measuring the deformation of the projected pattern. In principle, a combination of one camera and one light projector can carry out the measurement of the 3D coordinates. The use of two or more cameras, which cover a common space, combined with one light projector, provides three major advantages. First, the weighted average values of the 3D measurements obtained by each of the cameras correspond to a better 3D measurement. Second, this configuration overcomes more problems caused by an occlusion effect. Third, the two cameras observe the projected pattern from different views so that a better interpretation of the deformation of the projected pattern on a discontinued surface can be obtained. The measured 3D coordinates can be transferred via a high-speed link to another computer.
The third function is to make a motion capture of a limited number of points in 3D space. When using some markers on a surface, it becomes relatively easy to determine the 3D positions of these points. It is also possible to use some known points on the object, like the features of the skin, lips, eyelids, eyes, etc. Of course, the 3D space observed by the cameras must be calibrated and a disparity of a given point captured by the cameras can be evaluated and its 3D position can be calculated. When the number of points to be measured is low, it is even possible to determine the 3D positions of these points several times per second. This data can be used to control the motion of an object or model. This data can be transferred via a high-speed link to another computer.
Motion tracking, which analyzes the dynamic motion of a subject in a scene captured by any one or both cameras mounted onto a rotational table, can be achieved with the system according to the invention. A servo control may be used to control (in real time) the rotation of the rotational table in such a way that the digitizer can follow the dynamic motion of the subject. A user, either present or at a distance, can also send a command to the computer in order to orient the digitizer to a desired direction. Since the servo control provides the exact position of the rotational table, it is evident that the whole 3D space covered by the digitizer mounted on the rotational table is calibrated as a known geometric space with respect to the digitizer. This function provides the possibility to cover a larger space to perform the three basic functions of this apparatus.
Instead of mounting the digitizer on the rotational table, sometimes, it is convenient to place an object on this table. This configuration simplifies the operation to merge several views of a 3D object to create a complete 3D model. A 3D digitizer can measure the 3D surface of one single view of an object. In order to create a complete object model, it is necessary to capture different views of an object. When the object is placed on the controlled rotational table, the precise position of each view with respect to the other views is known. So it is easy to register several views in a common 3D coordinate system and to merge them to create a complete 3D model.